"""
总结，元素定位不到的原因有哪些？
1、元素定位方式可能真的有问题 ，就是定位不到
换一种定位方式，重新操作元素
2、可能出现了新的窗口，没有切换到当前的窗口
切换句柄到当前的
3、元素没有加载完，就去操作
加显示等待、隐式等待、强制等待
4、定位不到元素，出现了iframe内联框架
跳进iframe内敛框架
"""
import time

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()
driver.implicitly_wait(15)
driver.get("https://www.126.com/")
driver.maximize_window()
# 跳进iframe
iframe = driver.find_elements(By.TAG_NAME,"iframe")[0]
driver.switch_to.frame(iframe)
# 定位账号框
user = driver.find_element(By.NAME,"email")
user.clear()
user.send_keys("baijiacheng_123")
# 定位密码框
password = driver.find_element(By.NAME,"password")
password.clear()
password.send_keys("qwe123..")
# 点击登录
driver.find_element(By.ID,"dologin").click()
# 点击登录
driver.find_element(By.XPATH,"//*[text()='登录']").click()

# 跳出iframe，回到默认的上下文
driver.switch_to.default_content()

